﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using QLNHK.BLL;

namespace QLNHK
{
    public partial class frmDangNhap : Form
    {
        private Cls_NGUOIDUNG ObjNguoiDung = new Cls_NGUOIDUNG();
        private Cls_NGUOIDUNG ObjNguoiDungInfo = new Cls_NGUOIDUNG();
        public static bool IsLoginSuccess;

        public frmDangNhap()
        {
            InitializeComponent();
        }

        private void btnDangNhap_Click(object sender, EventArgs e)
        {
            if (doLogin())
                DialogResult = DialogResult.OK;
            else
                DialogResult = DialogResult.None;
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            Application.Exit();
            DialogResult = DialogResult.Cancel;
        }

        private bool doLogin()
        {
            try
            {
                string EncryptPassword = Global.Encrypt(txtMatKhau.Text);

                ObjNguoiDungInfo = ObjNguoiDung.DoLogin(txtTenDangNhap.Text, EncryptPassword);

                if (ObjNguoiDungInfo != null)
                {
                    if (!ObjNguoiDungInfo.TinhTrang)
                    {
                        MessageBox.Show("Người dùng này đã bị khóa. Vui lòng liên hệ Quản trị hệ thống để mở khóa.");
                        return false;
                    }
                    else
                    {
                        frmMain.IsLoginSuccess = true;
                        frmMain.ObjNguoiDung = ObjNguoiDungInfo;

                        //Save user login
                        //GlobalSettings.SaveNodeXmlAppSettings("UserLogin", txtTenDangNhap.Text.Trim());

                        return true;
                    }
                }
                else
                {
                    MessageBox.Show("Đăng nhập không thành công. Kiểm tra lại tên đăng nhập và mật khẩu.");
                    txtMatKhau.Text = "";
                    txtMatKhau.Focus();
                    return false;
                }
            }
            catch (Exception ex)
            {
                Logger.LocalLogger.Instance().WriteMessage(ex);
                return false;
            }
        }

        private void ultraFormattedLinkLabel1_LinkClicked(object sender, Infragistics.Win.FormattedLinkLabel.LinkClickedEventArgs e)
        {
            
        }

        private void ultraLabel3_Click(object sender, EventArgs e)
        {
            frmCauHinh f = new frmCauHinh();
            f.ShowDialog();
        }
    }
}
